Core courses
Programming II
- COURSE CONTENTS
-
Course contents: Pointers and pointer arithmetic. Call by value/reference. Pointers to functions. Dynamic memory allocation. Structs and arrays of structs. Simple data structures (single and double linked lists, circular lists, stacks, queues) and associated functions. Debugging. Recursion. Handling of characters and strings. Random number generation. Command line arguments. Bitwise operations. File I/O (text and binary). Modular programming. The C preprocessor. Useful programs (makefile, profiling, etc). Introduction to network programming using sockets.
- ASSESSMENT
-
Assessment: The course grade will be based on programming projects (possibly involving a personal examination) and/or programming exercises that will jointly account for 50% of the final grade, and a 3- hour written examination that will account for the remaining 50% of the final grade. These percentages may vary (+/-10%) each year. To succeed in this course, a mark of 5 or higher is required in the written exam and in the final grade.